diff --git a/requests/models.py b/requests/models.py
index ee2ca9e2..d81eeb08 100644
--- a/requests/models.py
+++ b/requests/models.py
@@ -433,12 +433,12 @@ class PreparedRequest(RequestEncodingMixin, RequestHooksMixin):
     def prepare_content_length(self, body):
         if hasattr(body, 'seek') and hasattr(body, 'tell'):
             body.seek(0, 2)
-            self.headers['Content-Length'] = str(body.tell())
+            self.headers['Content-Length'] = to_native_string(str(body.tell()))
             body.seek(0, 0)
         elif body is not None:
             l = super_len(body)
             if l:
-                self.headers['Content-Length'] = str(l)
+                self.headers['Content-Length'] = to_native_string(str(l))
         elif self.method not in ('GET', 'HEAD'):
             self.headers['Content-Length'] = '0'
 
